package com.dev.springBootDemo.reflection;

import java.lang.annotation.ElementType;

/**
 * @author zhumq
 * @date 2024/7/1 20:04
 */
public class testReflection03 {
    public static void main(String[] args) {
        Class c1 = Object.class; // 类
        Class c2 = Comparable.class; // 接口
        Class c3 = String[].class; // 一维数组
        Class c4 = int[][].class; // 二维数组
        Class c5 = Override.class; // 注解
        Class c6 = void.class; // void
        Class c7 = ElementType.class; // 元素类型
        Class c8 = Class.class; // Class
        Class c9 = Integer.class; // 基本数据类型
        Class c10 = Enum.class; // 枚举

        System.out.println(c1); // class java.lang.Object
        System.out.println(c2); // interface java.lang.Comparable
        System.out.println(c3); // class [Ljava.lang.String;
        System.out.println(c4); // class [[I
        System.out.println(c5); // interface java.lang.Override
        System.out.println(c6); // void
        System.out.println(c7); // class java.lang.annotation.ElementType
        System.out.println(c8); // class java.lang.Class
        System.out.println(c9); // class java.lang.Integer
        System.out.println(c10); // interface java.lang.Enum

        // 类型与维度一样，就是同一个Class
        int[] a = new int[10];
        int[] b = new int[100];
        System.out.println(a.getClass().hashCode()); // 2125039532
        System.out.println(b.getClass().hashCode()); // 2125039532
    }
}
